package cn.scau.server.service;

import cn.scau.server.dto.EmpDeptDTO;
import cn.scau.server.dto.PositionPageDTO;
import cn.scau.server.pojo.Position;
import cn.scau.server.vo.EmpDeptQueryVO;
import cn.scau.server.vo.EmpPosDeptVO;
import cn.scau.server.vo.ResultVO;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author 代码不跑我先跑
 * @since 2025-03-30
 */
public interface PositionService extends IService<Position> {
    //添加职位
    public ResultVO addPosition(String name, String deptName);
    //修改职位
    public ResultVO editPosition(Integer positionId, String positionName);
    //删除职位
    public ResultVO deletePosition(Integer positionId);
    //分页查询职位信息
    public ResultVO<IPage<Position>> pagePosition(PositionPageDTO positionPageDTO) throws Exception;
    //根据职位编号查找所有拥有该职位的员工信息
    public ResultVO<List<EmpPosDeptVO>> getEmpsByPositionId(Integer positionId);
    //根据部门名称查找所有职位
    public ResultVO<List<String>> getPositionsByDeptName(String deptName);
}
